package com.tyk.bookstore.back.payment.model.vo;

import com.tyk.bookstore.back.common.core.model.page.PageVo;
import com.tyk.bookstore.back.payment.model.enume.ShopStatementType;
import com.tyk.bookstore.back.payment.model.enume.StatementNature;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * @author tyk
 * @description 书店流水
 */
@Data
@Schema(name = "ShopStatementPageVo", description = "书店流水")
public class ShopStatementPageVo extends PageVo<ShopStatementPageVo.ShopStatement> {

    @Data
    @Schema(name = "ShopStatement", description = "书店流水")
    public static class ShopStatement implements Serializable {

        @Serial
        private static final long serialVersionUID = 1L;

        @Schema(description = "ID")
        private Long id;

        @Schema(description = "来源主体标识")
        private String otherSideIdentification;

        @Schema(description = "来源标识")
        private String sourceIdentification;

        @Schema(description = "交易值")
        private BigDecimal modification;

        @Schema(description = "交易性质[0收入,1指出]")
        private StatementNature nature;

        @Schema(description = "交易类型")
        private ShopStatementType type;

        @Schema(description = "创建时间")
        private LocalDateTime createTime;

    }
}
